﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using RestSharp;
using WOWA.Model.Characters;
using WOWA.Model.Servers;
using WOWA.Utility;

namespace WOWA.Core
{
	public enum CharacterLogicOptionalFields
	{
		Default,
		Guild,
		Stats,
		Talents,
		Items,
		Reputation,
		Titles,
		Professions,
		Appearance,
		Companions,
		Mounts,
		Pets,
		Achievements,
		Progression,
		Pvp,
		Quests,
		All
	}

	public static class CharacterLogic
	{
		internal static string GetUri(string realm, string name, CharacterLogicOptionalFields fields = CharacterLogicOptionalFields.Default)
		{
			string uri = "api/wow/character/" + realm + "/" + name;
			if (fields != CharacterLogicOptionalFields.Default)
			{

			}

			return uri;
		}

		public static void GetCharacter(Server server, string realm, string name, Action<Character> callback)
		{
			ServiceUtility.Invoke<Character>(server.Host, GetUri(realm, name), (data)=>
				{
					callback(data);
				});
		}
	}
}
